
 // 封装ajax 参数  method  url  data   Promise
 function request(method, url, data = null) {

    return  new Promise((resolve,reject)=>{
        // 1.创建ajax对象
        let xhr = new XMLHttpRequest()
        // 2.open()打开 如果是get要考虑是否地址栏传参，post没有
        url = method == 'get' && data != null ? url + '?' + data : url
        xhr.open(method, url, true)
        // 3.post有,get没有
        if (method == "post") xhr.setRequestHeader("content-type", "application/x-www-form-urlencoded")
        // 4.send()发送请求 post有参数，get无参数
        xhr.send(method == "get" ? "" : data)
        // 5.监听
        xhr.onreadystatechange = function () {
            if (xhr.status == 200 && xhr.readyState == 4) {
                // 请求结果回来后传递给回调函数
                resolve(JSON.parse(xhr.response))
                render(JSON.parse(xhr.response))
            }

        }

    })
}